import http from '@/utils/request'

// 商品相关请求

interface IResData {
  code: string
  message: string
  data: {
    token: string
    adminname: string
  }
}
// axios<类型>() 限制r.data的类型
// http<类型>() 限制r.data的类型
function loginRequest(adminname: string, password: string) {
  //http函数返回的是什么？promsie对象

  // productSearch 把http函数调用以后promsie对象作为了返回值
  return http<IResData>({
    method: 'post',
    url: '/admin/admin/login',
    data: { adminname, password },
  })
}

function adminListRequest() {
  //http函数返回的是什么？promsie对象

  // productSearch 把http函数调用以后promsie对象作为了返回值
  return http({
    method: 'get',
    url: '/admin/admin/list',
  })
}
// 参照接口文档定义删除接口
function adminDeleteRequest(adminid: string) {
  //http函数返回的是什么？promsie对象

  // productSearch 把http函数调用以后promsie对象作为了返回值
  return http({
    method: 'post',
    url: '/admin/admin/delete',
    data: { adminid },
  })
}

// 参照接口文档定义删除接口
function adminAddRequest(adminname: string, password: string, role: number) {
  //http函数返回的是什么？promsie对象

  // productSearch 把http函数调用以后promsie对象作为了返回值
  return http({
    method: 'post',
    url: '/admin/admin/add',
    data: { adminname, password, role, checkedKeys: '' },
  })
}

// 参照接口文档定义获取管理员信息接口
function adminInfoRequest(adminname: string) {
  //http函数返回的是什么？promsie对象

  return http({
    method: 'get',
    url: '/admin/admin/detail',
    params: { adminname },
  })
}

export { loginRequest, adminListRequest, adminDeleteRequest, adminAddRequest, adminInfoRequest }
